package com.wisdomparking.bean;

import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;

public class Parking implements Serializable {
	private Integer id;

    private String name;

    private String address;

    private String contacts;

    private String contactNumber;

    private String gpsX;

    private String gpsY;

    private String parkingType;

    private Boolean nature;

    private Integer parkingTotalA;

    private Integer largeVehicleA;

    private Integer lightdutyVehicleA;

    private String chargingA;

    private Integer parkingTotalB;

    private Integer largeVehicleB;

    private Integer lightdutyVehicleB;

    private String chargingB;

    private Boolean dangerousGoods;

    private String chargingMode;

    private String serverTime;

    private String serverHotline;

    private String complaintsHotline;

    private String corporation;

    private String identification;
    
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    private Integer surplusLargeVehicleA;

    private Integer surplusLightdutyVehicleA;

    private Integer surplusLargeVehicleB;

    private Integer surplusLightdutyVehicleB;
    
    private Integer managerId;
    
    private Boolean delFlag;
    
    private String noticeUrl;
    
    private String dataHandle;

    private static final long serialVersionUID = 1L;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }
    
    /**
     * 停车场所名称
     */
    public String getName() {
        return name;
    }
    
    /**
     * 停车场所名称
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     * 地址
     */
    public String getAddress() {
        return address;
    }

    /**
     * 地址
     */
    public void setAddress(String address) {
        this.address = address;
    }

    /**
     * 联系人
     */
    public String getContacts() {
        return contacts;
    }

    /**
     * 联系人
     */
    public void setContacts(String contacts) {
        this.contacts = contacts;
    }

    /**
     * 联系电话
     */
    public String getContactNumber() {
        return contactNumber;
    }

    /**
     * 联系电话
     */
    public void setContactNumber(String contactNumber) {
        this.contactNumber = contactNumber;
    }

    /**
     * 经度
     */
    public String getGpsX() {
        return gpsX;
    }

    /**
     * 经度
     */
    public void setGpsX(String gpsX) {
        this.gpsX = gpsX;
    }

    /**
     * 纬度
     */
    public String getGpsY() {
        return gpsY;
    }

    /**
     * 纬度
     */
    public void setGpsY(String gpsY) {
        this.gpsY = gpsY;
    }

    /**
     * 停放车种 [1: 大型客车，2: 大型货车，3: 小型客车，4: 小型货车]
     */
    public String getParkingType() {
        return parkingType;
    }

    /**
     * 停放车种 [1: 大型客车，2: 大型货车，3: 小型客车，4: 小型货车]
     */
    public void setParkingType(String parkingType) {
        this.parkingType = parkingType;
    }

    /**
     * 车场性质 [1: 地上，0: 地下]
     */
    public Boolean getNature() {
        return nature;
    }

    /**
     * 车场性质 [1: 地上，0: 地下]
     */
    public void setNature(Boolean nature) {
        this.nature = nature;
    }

    /**
     * 车场车位总数
     */
    public Integer getParkingTotalA() {
        return parkingTotalA;
    }

    /**
     * 车场车位总数
     */
    public void setParkingTotalA(Integer parkingTotalA) {
        this.parkingTotalA = parkingTotalA;
    }

    /**
     * 车场大型车泊位A
     */
    public Integer getLargeVehicleA() {
        return largeVehicleA;
    }

    /**
     * 车场大型车泊位A
     */
    public void setLargeVehicleA(Integer largeVehicleA) {
        this.largeVehicleA = largeVehicleA;
    }

    /**
     * 车场小型车泊位A
     */
    public Integer getLightdutyVehicleA() {
        return lightdutyVehicleA;
    }

    /**
     * 车场小型车泊位A
     */
    public void setLightdutyVehicleA(Integer lightdutyVehicleA) {
        this.lightdutyVehicleA = lightdutyVehicleA;
    }

    /**
     * 车场计费A
     */
    public String getChargingA() {
        return chargingA;
    }

    /**
     * 车场计费A
     */
    public void setChargingA(String chargingA) {
        this.chargingA = chargingA;
    }

    /**
     * 车库车位总数
     */
    public Integer getParkingTotalB() {
        return parkingTotalB;
    }

    /**
     * 车库车位总数
     */
    public void setParkingTotalB(Integer parkingTotalB) {
        this.parkingTotalB = parkingTotalB;
    }

    /**
     * 车库大型车泊位B
     */
    public Integer getLargeVehicleB() {
        return largeVehicleB;
    }

    /**
     * 车库大型车泊位B
     */
    public void setLargeVehicleB(Integer largeVehicleB) {
        this.largeVehicleB = largeVehicleB;
    }

    /**
     * 车库小型车泊位B
     */
    public Integer getLightdutyVehicleB() {
        return lightdutyVehicleB;
    }

    /**
     * 车库小型车泊位B
     */
    public void setLightdutyVehicleB(Integer lightdutyVehicleB) {
        this.lightdutyVehicleB = lightdutyVehicleB;
    }

    /**
     * 车库计费B
     */
    public String getChargingB() {
        return chargingB;
    }

    /**
     * 车库计费B
     */
    public void setChargingB(String chargingB) {
        this.chargingB = chargingB;
    }

    /**
     * 是否可停放危险品
     */
    public Boolean getDangerousGoods() {
        return dangerousGoods;
    }

    /**
     * 是否可停放危险品
     */
    public void setDangerousGoods(Boolean dangerousGoods) {
        this.dangerousGoods = dangerousGoods;
    }

    /**
     * 计费方式 [1: 人工，2: 自动计时自动收费，3: 自动计时人工收费]
     */
    public String getChargingMode() {
        return chargingMode;
    }

    /**
     * 计费方式 [1: 人工，2: 自动计时自动收费，3: 自动计时人工收费]
     */
    public void setChargingMode(String chargingMode) {
        this.chargingMode = chargingMode;
    }

    /**
     * 营业时间
     */
    public String getServerTime() {
        return serverTime;
    }

    /**
     * 营业时间
     */
    public void setServerTime(String serverTime) {
        this.serverTime = serverTime;
    }

    /**
     * 对外服务电话
     */
    public String getServerHotline() {
        return serverHotline;
    }

    /**
     * 对外服务电话
     */
    public void setServerHotline(String serverHotline) {
        this.serverHotline = serverHotline;
    }

    /**
     * 投诉电话
     */
    public String getComplaintsHotline() {
        return complaintsHotline;
    }

    /**
     * 投诉电话
     */
    public void setComplaintsHotline(String complaintsHotline) {
        this.complaintsHotline = complaintsHotline;
    }

    /**
     * 法人
     */
    public String getCorporation() {
        return corporation;
    }

    /**
     * 法人
     */
    public void setCorporation(String corporation) {
        this.corporation = corporation;
    }
    
    /**
     * 名称与注册时间生成的唯一标识
     */
    public String getIdentification() {
		return identification;
	}

    /**
     * 名称与注册时间生成的唯一标识
     */
	public void setIdentification(String identification) {
		this.identification = identification;
	}

	/**
     * 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    
    /**
     * 剩余车场大型车泊位A
     */
    public Integer getSurplusLargeVehicleA() {
		return surplusLargeVehicleA;
	}

    /**
     * 剩余车场大型车泊位A
     */
	public void setSurplusLargeVehicleA(Integer surplusLargeVehicleA) {
		this.surplusLargeVehicleA = surplusLargeVehicleA;
	}

	/**
     * 剩余车场小型车泊位A
     */
	public Integer getSurplusLightdutyVehicleA() {
		return surplusLightdutyVehicleA;
	}

	/**
     * 剩余车场小型车泊位A
     */
	public void setSurplusLightdutyVehicleA(Integer surplusLightdutyVehicleA) {
		this.surplusLightdutyVehicleA = surplusLightdutyVehicleA;
	}

	/**
     * 剩余车库大型车泊位B
     */
	public Integer getSurplusLargeVehicleB() {
		return surplusLargeVehicleB;
	}

	/**
     * 剩余车库大型车泊位B
     */
	public void setSurplusLargeVehicleB(Integer surplusLargeVehicleB) {
		this.surplusLargeVehicleB = surplusLargeVehicleB;
	}

	/**
     * 剩余车库小型车泊位B
     */
	public Integer getSurplusLightdutyVehicleB() {
		return surplusLightdutyVehicleB;
	}

	/**
     * 剩余车库小型车泊位B
     */
	public void setSurplusLightdutyVehicleB(Integer surplusLightdutyVehicleB) {
		this.surplusLightdutyVehicleB = surplusLightdutyVehicleB;
	}

	public Integer getManagerId() {
        return managerId;
    }

    public void setManagerId(Integer managerId) {
        this.managerId = managerId;
    }

    public Boolean getDelFlag() {
		return delFlag;
	}

	public void setDelFlag(Boolean delFlag) {
		this.delFlag = delFlag;
	}
	
	/**
	 * 抬杠动作地址
	 */
	public String getNoticeUrl() {
		return noticeUrl;
	}
	
	/**
	 * 抬杠动作地址
	 */
	public void setNoticeUrl(String noticeUrl) {
		this.noticeUrl = noticeUrl;
	}
	
	/**
	 * 数据处理标记
	 */
	public String getDataHandle() {
        return dataHandle;
    }

	/**
	 * 数据处理标记
	 */
    public void setDataHandle(String dataHandle) {
        this.dataHandle = dataHandle;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        Parking other = (Parking) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
            && (this.getName() == null ? other.getName() == null : this.getName().equals(other.getName()))
            && (this.getAddress() == null ? other.getAddress() == null : this.getAddress().equals(other.getAddress()))
            && (this.getContacts() == null ? other.getContacts() == null : this.getContacts().equals(other.getContacts()))
            && (this.getContactNumber() == null ? other.getContactNumber() == null : this.getContactNumber().equals(other.getContactNumber()))
            && (this.getGpsX() == null ? other.getGpsX() == null : this.getGpsX().equals(other.getGpsX()))
            && (this.getGpsY() == null ? other.getGpsY() == null : this.getGpsY().equals(other.getGpsY()))
            && (this.getParkingType() == null ? other.getParkingType() == null : this.getParkingType().equals(other.getParkingType()))
            && (this.getNature() == null ? other.getNature() == null : this.getNature().equals(other.getNature()))
            && (this.getParkingTotalA() == null ? other.getParkingTotalA() == null : this.getParkingTotalA().equals(other.getParkingTotalA()))
            && (this.getLargeVehicleA() == null ? other.getLargeVehicleA() == null : this.getLargeVehicleA().equals(other.getLargeVehicleA()))
            && (this.getLightdutyVehicleA() == null ? other.getLightdutyVehicleA() == null : this.getLightdutyVehicleA().equals(other.getLightdutyVehicleA()))
            && (this.getChargingA() == null ? other.getChargingA() == null : this.getChargingA().equals(other.getChargingA()))
            && (this.getParkingTotalB() == null ? other.getParkingTotalB() == null : this.getParkingTotalB().equals(other.getParkingTotalB()))
            && (this.getLargeVehicleB() == null ? other.getLargeVehicleB() == null : this.getLargeVehicleB().equals(other.getLargeVehicleB()))
            && (this.getLightdutyVehicleB() == null ? other.getLightdutyVehicleB() == null : this.getLightdutyVehicleB().equals(other.getLightdutyVehicleB()))
            && (this.getChargingB() == null ? other.getChargingB() == null : this.getChargingB().equals(other.getChargingB()))
            && (this.getDangerousGoods() == null ? other.getDangerousGoods() == null : this.getDangerousGoods().equals(other.getDangerousGoods()))
            && (this.getChargingMode() == null ? other.getChargingMode() == null : this.getChargingMode().equals(other.getChargingMode()))
            && (this.getServerTime() == null ? other.getServerTime() == null : this.getServerTime().equals(other.getServerTime()))
            && (this.getServerHotline() == null ? other.getServerHotline() == null : this.getServerHotline().equals(other.getServerHotline()))
            && (this.getComplaintsHotline() == null ? other.getComplaintsHotline() == null : this.getComplaintsHotline().equals(other.getComplaintsHotline()))
            && (this.getCorporation() == null ? other.getCorporation() == null : this.getCorporation().equals(other.getCorporation()))
            && (this.getIdentification() == null ? other.getIdentification() == null : this.getIdentification().equals(other.getIdentification()))
            && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
            && (this.getSurplusLargeVehicleA() == null ? other.getSurplusLargeVehicleA() == null : this.getSurplusLargeVehicleA().equals(other.getSurplusLargeVehicleA()))
            && (this.getSurplusLightdutyVehicleA() == null ? other.getSurplusLightdutyVehicleA() == null : this.getSurplusLightdutyVehicleA().equals(other.getSurplusLightdutyVehicleA()))
            && (this.getSurplusLargeVehicleB() == null ? other.getSurplusLargeVehicleB() == null : this.getSurplusLargeVehicleB().equals(other.getSurplusLargeVehicleB()))
            && (this.getSurplusLightdutyVehicleB() == null ? other.getSurplusLightdutyVehicleB() == null : this.getSurplusLightdutyVehicleB().equals(other.getSurplusLightdutyVehicleB()))
            && (this.getManagerId() == null ? other.getManagerId() == null : this.getManagerId().equals(other.getManagerId()))
            && (this.getDelFlag() == null ? other.getDelFlag() == null : this.getDelFlag().equals(other.getDelFlag()))
            && (this.getNoticeUrl() == null ? other.getNoticeUrl() == null : this.getNoticeUrl().equals(other.getNoticeUrl()))
            && (this.getDataHandle() == null ? other.getDataHandle() == null : this.getDataHandle().equals(other.getDataHandle()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getName() == null) ? 0 : getName().hashCode());
        result = prime * result + ((getAddress() == null) ? 0 : getAddress().hashCode());
        result = prime * result + ((getContacts() == null) ? 0 : getContacts().hashCode());
        result = prime * result + ((getContactNumber() == null) ? 0 : getContactNumber().hashCode());
        result = prime * result + ((getGpsX() == null) ? 0 : getGpsX().hashCode());
        result = prime * result + ((getGpsY() == null) ? 0 : getGpsY().hashCode());
        result = prime * result + ((getParkingType() == null) ? 0 : getParkingType().hashCode());
        result = prime * result + ((getNature() == null) ? 0 : getNature().hashCode());
        result = prime * result + ((getParkingTotalA() == null) ? 0 : getParkingTotalA().hashCode());
        result = prime * result + ((getLargeVehicleA() == null) ? 0 : getLargeVehicleA().hashCode());
        result = prime * result + ((getLightdutyVehicleA() == null) ? 0 : getLightdutyVehicleA().hashCode());
        result = prime * result + ((getChargingA() == null) ? 0 : getChargingA().hashCode());
        result = prime * result + ((getParkingTotalB() == null) ? 0 : getParkingTotalB().hashCode());
        result = prime * result + ((getLargeVehicleB() == null) ? 0 : getLargeVehicleB().hashCode());
        result = prime * result + ((getLightdutyVehicleB() == null) ? 0 : getLightdutyVehicleB().hashCode());
        result = prime * result + ((getChargingB() == null) ? 0 : getChargingB().hashCode());
        result = prime * result + ((getDangerousGoods() == null) ? 0 : getDangerousGoods().hashCode());
        result = prime * result + ((getChargingMode() == null) ? 0 : getChargingMode().hashCode());
        result = prime * result + ((getServerTime() == null) ? 0 : getServerTime().hashCode());
        result = prime * result + ((getServerHotline() == null) ? 0 : getServerHotline().hashCode());
        result = prime * result + ((getComplaintsHotline() == null) ? 0 : getComplaintsHotline().hashCode());
        result = prime * result + ((getCorporation() == null) ? 0 : getCorporation().hashCode());
        result = prime * result + ((getIdentification() == null) ? 0 : getIdentification().hashCode());
        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
        result = prime * result + ((getSurplusLargeVehicleA() == null) ? 0 : getSurplusLargeVehicleA().hashCode());
        result = prime * result + ((getSurplusLightdutyVehicleA() == null) ? 0 : getSurplusLightdutyVehicleA().hashCode());
        result = prime * result + ((getSurplusLargeVehicleB() == null) ? 0 : getSurplusLargeVehicleB().hashCode());
        result = prime * result + ((getSurplusLightdutyVehicleB() == null) ? 0 : getSurplusLightdutyVehicleB().hashCode());
        result = prime * result + ((getManagerId() == null) ? 0 : getManagerId().hashCode());
        result = prime * result + ((getDelFlag() == null) ? 0 : getDelFlag().hashCode());
        result = prime * result + ((getNoticeUrl() == null) ? 0 : getNoticeUrl().hashCode());
        result = prime * result + ((getDataHandle() == null) ? 0 : getDataHandle().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", name=").append(name);
        sb.append(", address=").append(address);
        sb.append(", contacts=").append(contacts);
        sb.append(", contactNumber=").append(contactNumber);
        sb.append(", gpsX=").append(gpsX);
        sb.append(", gpsY=").append(gpsY);
        sb.append(", parkingType=").append(parkingType);
        sb.append(", nature=").append(nature);
        sb.append(", parkingTotalA=").append(parkingTotalA);
        sb.append(", largeVehicleA=").append(largeVehicleA);
        sb.append(", lightdutyVehicleA=").append(lightdutyVehicleA);
        sb.append(", chargingA=").append(chargingA);
        sb.append(", parkingTotalB=").append(parkingTotalB);
        sb.append(", largeVehicleB=").append(largeVehicleB);
        sb.append(", lightdutyVehicleB=").append(lightdutyVehicleB);
        sb.append(", chargingB=").append(chargingB);
        sb.append(", dangerousGoods=").append(dangerousGoods);
        sb.append(", chargingMode=").append(chargingMode);
        sb.append(", serverTime=").append(serverTime);
        sb.append(", serverHotline=").append(serverHotline);
        sb.append(", complaintsHotline=").append(complaintsHotline);
        sb.append(", corporation=").append(corporation);
        sb.append(", identification=").append(identification);
        sb.append(", createTime=").append(createTime);
        sb.append(", surplusLargeVehicleA=").append(surplusLargeVehicleA);
        sb.append(", surplusLightdutyVehicleA=").append(surplusLightdutyVehicleA);
        sb.append(", surplusLargeVehicleB=").append(surplusLargeVehicleB);
        sb.append(", surplusLightdutyVehicleB=").append(surplusLightdutyVehicleB);
        sb.append(", managerId=").append(managerId);
        sb.append(", delFlag=").append(delFlag);
        sb.append(", noticeUrl=").append(noticeUrl);
        sb.append(", dataHandle=").append(dataHandle);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}